import axios from 'axios'
import { ElMessage } from 'element-plus'  // 引入 Element Plus 中的 ElMessage
import router from './router'
import store from './store'
import 'element-plus/dist/index.css';

axios.defaults.baseURL = "http://localhost:8081"

// 请求拦截
axios.interceptors.request.use(config => {
    // 你可以在这里添加认证信息或其他请求配置
    return config
})

// 响应拦截
axios.interceptors.response.use(response => {
        let res = response.data;

        console.log("=================")
        console.log(res)
        console.log("=================")

        if (res.code === 200) {
            return response
        } else {
            // 使用 ElMessage 代替 Element.Message
            ElMessage({
                message: response.data.msg,
                type: 'error',
                duration: 3000
            });
            return Promise.reject(response.data.msg)
        }
    },
    error => {
        console.log(error)
        if (error.response && error.response.data) {
            error.message = error.response.data.msg
        }

        if (error.response && error.response.status === 401) {
            store.commit("REMOVE_INFO")
            router.push("/login")
        }

        // 使用 ElMessage 代替 Element.Message
        //ElMessage.error(error.message, {duration: 3 * 1000})
        ElMessage({
            message: error.message || '发生了未知错误',
            type: 'error',
            duration: 3000,
        });
        return Promise.reject(error)
    }
)

export default axios

